<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<html>
<head>
	<title>待办任务</title>
	<meta name="decorator" content="default"/>
	<script type="text/javascript">
		$(document).ready(function() {
			layui.use(['laypage', 'form','table'], function(){
				var form = layui.form; //只有执行了这一步，部分表单元素才会自动修饰成功
				form.render();
				var table = layui.table;
				table.init('taskTable',{limit:30});
			});
		});
		/**
		 * 签收任务
		 */
		function claim(taskId) {
			$.get('${ctx}/act/task/claim' ,{taskId: taskId}, function(data) {
				if (data == 'true'){
		        	top.$.jBox.tip('签收完成');
		            location = '${ctx}/act/task/todo/';
				}else{
		        	top.$.jBox.tip('签收失败');
				}
		    });
		}
	</script>
</head>
<body>
	<div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
		<ul class="layui-tab-title">
			<li class="layui-this"><a href="${ctx}/act/task/todo/">待办任务</a></li>
			<li><a href="${ctx}/act/task/historic/">已办任务</a></li>
			<li><a href="${ctx}/act/task/process/">新建任务</a></li>
		</ul>
	</div>
	<blockquote class="layui-elem-quote quoteBox">
	<form:form id="searchForm" modelAttribute="act" action="${ctx}/act/task/todo/" method="get" class="layui-form">
		<div>
			<div class="layui-inline">
				<label class="layui-form-label">流程类型：&nbsp;</label>
				<div class="layui-input-block">
				<form:select path="procDefKey" class="layui-input">
					<form:option value="" label="全部流程"/>
					<form:options items="${fns:getDictList('act_type')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
				</form:select>
				</div>
			</div>
			<div class="layui-inline">
				<label class="layui-form-label">创建时间：</label>
				<div class="layui-input-block">
				<input id="beginDate"  name="beginDate"  type="text" readonly="readonly" maxlength="20" class="layui-input Wdate" style="width:163px;"
				value="<fmt:formatDate value="${act.beginDate}" pattern="yyyy-MM-dd"/>"
					onclick="WdatePicker({dateFmt:'yyyy-MM-dd'});"/>
				</div>
			</div>
				--
			<div class="layui-inline">
				<input id="endDate" name="endDate" type="text" readonly="readonly" maxlength="20" class="layui-input Wdate" style="width:163px;"
				value="<fmt:formatDate value="${act.endDate}" pattern="yyyy-MM-dd"/>"
					onclick="WdatePicker({dateFmt:'yyyy-MM-dd'});"/>
				</div>
			&nbsp;
			<div class="layui-inline">
				<input id="btnSubmit" class="layui-btn search_btn" type="submit" value="查询" />
			</div>
		</div>
	</form:form>
	</blockquote>
	<sys:message content="${message}"/>
	<table id="contentTable" class="layui-table" lay-filter="taskTable">
		<thead>
			<tr>
				<th lay-data="{field:'title', minWidth:100}">标题</th>
				<th lay-data="{field:'nowType', minWidth:120}">当前环节</th><%--
				<th>任务内容</th> --%>
				<th lay-data="{field:'taskName', minWidth:100}">流程名称</th>
				<th lay-data="{field:'taskVersion', minWidth:100}">流程版本</th>
				<th lay-data="{field:'buildTime', minWidth:150}">创建时间</th>
				<th lay-data="{field:'todoFlag', minWidth:180}">操作</th>
			</tr>
		</thead>
		<tbody>
			<c:forEach items="${list}" var="act">
				<c:set var="task" value="${act.task}" />
				<c:set var="vars" value="${act.vars}" />
				<c:set var="procDef" value="${act.procDef}" /><%--
				<c:set var="procExecUrl" value="${act.procExecUrl}" /> --%>
				<c:set var="status" value="${act.status}" />
				<tr>
					<td>
						<c:if test="${empty task.assignee}">
							<a class="layui-blue"
							 href="javascript:claim('${task.id}');" title="签收任务">${fns:abbr(not empty act.vars.map.title ? act.vars.map.title : task.id, 60)}</a>
						</c:if>
						<c:if test="${not empty task.assignee}">
							<a class="layui-blue"
							 href="${ctx}/act/task/form?taskId=${task.id}&taskName=${fns:urlEncode(task.name)}&taskDefKey=${task.taskDefinitionKey}&procInsId=${task.processInstanceId}&procDefId=${task.processDefinitionId}&status=${status}">${fns:abbr(not empty vars.map.title ? vars.map.title : task.id, 60)}</a>
						</c:if>
					</td>
					<td>
						<a class="layui-blue"
						 target="_blank" href="${pageContext.request.contextPath}/act/diagram-viewer?processDefinitionId=${task.processDefinitionId}&processInstanceId=${task.processInstanceId}">${task.name}</a>
					</td><%--
					<td>${task.description}</td> --%>
					<td>${procDef.name}</td>
					<td><b title='流程版本号'>V: ${procDef.version}</b></td>
					<td><fmt:formatDate value="${task.createTime}" type="both"/></td>
					<td>
						<c:if test="${not empty task.assignee}"><%--
							<a href="${ctx}${procExecUrl}/exec/${task.taskDefinitionKey}?procInsId=${task.processInstanceId}&act.taskId=${task.id}">办理</a> --%>
							<a class="layui-btn layui-btn-xs" lay-event="edit" href="${ctx}/act/task/form?taskId=${task.id}&taskName=${fns:urlEncode(task.name)}&taskDefKey=${task.taskDefinitionKey}&procInsId=${task.processInstanceId}&procDefId=${task.processDefinitionId}&status=${status}">任务办理</a>
						</c:if>
						<c:if test="${empty task.assignee}">
							<a	class="layui-btn layui-btn-normal layui-btn-xs"
							 href="javascript:claim('${task.id}');">签收任务</a>
						</c:if>
						<shiro:hasPermission name="act:process:edit">
							<c:if test="${empty task.executionId}">
								<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del"
								 href="${ctx}/act/task/deleteTask?taskId=${task.id}&reason=" onclick="return promptx('删除任务','删除原因',this.href);">删除任务</a>
							</c:if>
						</shiro:hasPermission>
						<a class="layui-btn layui-btn-xs" target="_blank" href="${pageContext.request.contextPath}/act/diagram-viewer?processDefinitionId=${task.processDefinitionId}&processInstanceId=${task.processInstanceId}">跟踪</a><%-- 
						<a target="_blank" href="${ctx}/act/task/trace/photo/${task.processDefinitionId}/${task.executionId}">跟踪2</a> 
						<a target="_blank" href="${ctx}/act/task/trace/info/${task.processInstanceId}">跟踪信息</a> --%>
					</td>
				</tr>
			</c:forEach>
		</tbody>
	</table>
</body>
</html>
